<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>2_受控组件</title>
  </head>
  <body>
    <!-- 准备号一个容器 -->
    <div id="test"></div>

    <!-- 引入react核心库 -->
    <script type="text/javascript" src="../js/react.development.js"></script>
    <!-- 引入react-dom，用于支持react dom操作 -->
    <script type="text/javascript" src="../js/react-dom.development.js"></script>
    <!-- 引入babel，用于将jsx转为js -->
    <script type="text/javascript" src="../js/babel.min.js"></script>
    <script type="text/babel">
      // 1. 创建类组件
      class Login extends React.Component {
        // 初始化状态
        state = {
          username: '',
          password: ''
        }

        saveUsername = event => {
          this.setState({
            username: event.target.value
          })
        }

        savePassword = event => {
          this.setState({
            password: event.target.value
          })
        }

        handleSubmit = event => {
          const { username, password } = this.state
          alert(`用户名：${username}，密码：${password}`)
        }

        render() {
          return (
            <form onSubmit={this.handleSubmit}>
              用户名：
              <input type="text" name="username" onChange={this.saveUsername} />
              密码：
              <input type="password" name="password" onChange={this.savePassword} />
              <button>登录</button>
            </form>
          )
        }
      }

      // 2. 渲染组件到页面
      ReactDOM.render(<Login />, document.getElementById('test'))
    </script>
  </body>
</html>
